Method and system for delivering photos to called destinations

ABSTRACT

A method and system for conveying a digital image to an assistance center, such as an emergency-assistance center (e.g., 911 center). A camera phone captures an image and sends the image to a network server, and the network server stores the image in correlation with an identifier, such as an identifier of the camera phone or an identifier of an assistance call placed by the camera phone. The assistance center then queries the network server to obtain a photo correlated with the identifier. And the network server responsively provides the photo to the assistance center.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to digital photography and, moreparticularly, to delivery of digital images to assistance centers suchas emergency-assistance centers.

2. Description of Related Art

The art and popularity of digital photography has grown significantlyover recent years. As a general matter, digital photography is verysimilar to conventional film-based photography, except that photographstaken with a digital camera are stored as digital files rather thanbeing recorded on film. Digital photography thereby provides users withimmediate access to photographs without the need for film developing.Further, digital photography allows for easy communication and sharingof photographs, though a computer network for instance.

One application of digital photography that is gaining very widespreadacceptance is camera phone technology. As is known in the art, a cameraphone is a combination cell phone/digital camera. More specifically, acamera phone typically includes (i) cell phone components that allow auser to engage in wireless voice and data communications and (ii)digital camera components that allow a user to capture digital imagesand store the images in digital image files.

One of the great advantages of most camera phones is that they allow auser to capture a digital image and then wirelessly transmit the imagevirtually anywhere in the world, such as to family or friends. To dothis in a usual arrangement, a user of the camera phone takes a pictureand then selects or enters a destination address, such as an e-mailaddress or a phone number of another camera phone. The camera phone thentransmits the image to the destination address, typically by sending theimage to a photo server that then forwards the image to the designatedaddress.

Camera phones can also serve a useful security function. If a user has acamera phone at a crime scene or other emergency scene, for instance,the user can take a picture of the scene and then send the image topolice or other authorities. As described in U.S. patent applicationSer. No. 09/815,738, filed on Mar. 23, 2001 (published as US2002/0137528 A1), for example, a user could engage a special actuationbutton on the camera phone that would cause the camera phone to (i) takea picture (ii) initiate a “911” call to an emergency assistance center,and (iii) transmit the picture within the call to the emergencyassistance center.

SUMMARY

The present invention provides an improved method and system fordelivery of emergency-scene photos from a camera phone to an emergencyassistance center. According to an exemplary embodiment of theinvention, a camera phone will send an emergency-scene photo to anetwork server, and the network server will store the photo as anemergency-photo correlated with an identifier (such as a camera phoneidentifier or an emergency call identifier). At some point thereafter,either during set up of an emergency assistance call from the cameraphone, or during or after the call, the emergency assistance center willthen query the network server to determine whether any applicableemergency-photo(s) correlated with the identifier are available. Thenetwork server will then respond by providing the emergency assistancecenter with the emergency-photo previously received from the cameraphone.

More generally, the invention may take the form of a method thatinvolves (i) receiving into a network server an image captured by acamera phone, (ii) storing the image at the network server incorrelation with an identifier, (iii) during setup of a call from thecamera phone to an assistance center, providing the identifier to theassistance center, (iv) receiving into the network server from theassistance center a request specifying the identifier, (v) using theidentifier specified by the request as a basis to retrieve the image,and (vi) conveying the image in a response from the network server tothe assistance center.

In one scenario, the assistance center can be an emergency assistancecenter, such as a 911 public safety answering point (PSAP), and theidentifier could be an identifier of a call to the emergency assistancecenter or an identifier of the camera phone placing the call. Theassistance center could take other forms as well, such as a customerservice center for instance. Further, the network server could reside ina telecom carrier's network or elsewhere and could include one or morecomputers with data storage for holding the image in correlation withthe identifier. In this regard, the entity of the network server thatreceives the image may or may not be the same entity of the networkserver that actually stores the image. For instance, an interfacecomputer may receive the image and pass it to a storage computer, whichmay then store the image.

In addition, the function of receiving the image into the network servercould occur at various times, such as (i) before the camera phoneinitiates the call to the assistance center or (ii) during setup of thecall from the camera phone to the assistance center. In this regard, thefunction could involve receiving the image delivered from the cameraphone to an address assigned to the network server, such as an InternetProtocol (IP) address, an e-mail address, a Universal ResourceIdentifier (URI) such as a URL, or a Session Initiation Protocol (SIP)address. Alternatively or additionally, the function could involvereceiving the image from a photo server to which the camera phonetransmitted the image. Further, if the function occurs during setup ofthe call from the camera phone to the assistance center, the functioncould involve (i) receiving into the network server a signal indicativeof the call being set up and (ii) responsively sending from the networkserver to the camera phone a request for the image, in response to whichthe camera phone could provide the image to the network server.

The function of providing the identifier to the assistance center duringsetup of the call could also take various forms. For instance, it couldinvolve (i) detecting setup of the call at a switch, (ii) responsivelysending a signaling message from the switch to the network server, (iii)receiving at the switch a response that provides the identifier, and(iv) the switch sending a call setup message that carries theidentifier. Alternatively, in a scenario where the identifier comprisesa directory number of the camera phone, the function of providing theidentifier to the assistance center during call setup could involvedelivering the directory number to the assistance center asautomatic-number-identification (caller-ID) information.

The function of receiving into the network server the request from theassistance center can also occur during setup of the call from thecamera phone to the assistance center. For instance, when the assistancecenter receives a call setup message that carries the identifier orotherwise allows the assistance center to determine the identifier, theassistance center can send the request to the network server in aneffort to retrieve any applicable image. Alternatively or additionally,the function of receiving into the network server the request from theassistance center could occur after initiation of the call, whetherduring the call or even possibly sometime after the call has ended.

Further, after conveying the image from the network server to theassistance center, the invention may further involve (i) receiving intothe network server a subsequent image captured by the camera phone, (ii)storing the subsequent image at the network server in correlation withthe identifier, (iii) receiving into the network server a subsequentrequest from the assistance center to obtain at least one imagecorrelated with the identifier, and (iv) conveying the subsequent imagein a response from the network server to the assistance center.

Yet further, the image that the network server receives can berepresented by data in a digital image file. Thus, the network servercan receive the image by receiving the digital image file, and thenetwork server can convey the image to the assistance center byconveying the digital image file to the assistance center.

In an exemplary embodiment, the digital image file may further containcharacterizing-metadata, such as (i) data indicating where the image wascaptured, (ii) data indicating when the image was captured, (iii) dataindicating a location from which the image was transmitted, such as alocation of the camera phone at the time it sent the image into thenetwork, and (iv) data indicating a time when the image was transmitted,for instance.

The invention could then further involve using thecharacterizing-metadata as a basis to decide whether to send the imageform the network server to the assistance center. For instance, therequest from the assistance center could be restricted to ask for one ormore images whose characterizing-metadata meets one or more criteria. Orthe network server could be arranged to return images only if they havecharacterizing-metadata meeting certain criteria.

In another respect, the invention may take the form of a system, whichcould include a processor (i.e., one or more processors), data storage,and program instructions stored in the data storage and executable bythe processor to carry out various functions such (i) receiving an imagecaptured by a camera phone, (ii) storing the image in the data storage,in correlation with an identifier, (iii) during setup of a call from thecamera phone to an assistance center, receiving from the assistancecenter a request specifying the identifier, (iv) using the identifierspecified by the request as a basis to retrieve the image from the datastorage, and (v) sending the image in a response to the assistancecenter. Similarly, the invention may take the form of a machine readablemedium, such as a hard drive, memory device, disc, tape, or othermedium, containing machine language instructions that could be read andexecuted by a processor to carry out these functions.

In still another respect, the invention could take the form of a methodthat involves the functions of (i) capturing an image into a cameraphone, (ii) conveying the image from the camera phone to a networkserver, (iii) storing the image at the network server in correlationwith an identifier, (iv) placing a call from the camera phone to anassistance center, (v) providing the identifier to the assistance centerduring setup of the call, (vi) conveying a request from the assistancecenter to the network server to obtain the image, based on theidentifier, and (vii) conveying the image in a response from the networkserver to the assistance center.

In this regard, the function of conveying the image from the cameraphone to the network server could occur before placing the call from thecamera phone to the assistance center, during setup of the call, duringthe call itself, or after the call has ended. Similarly, the function ofthe assistance center querying the network server to obtain the image,based on the identifier, could occur during setup of the call, duringthe call, or after the call as well.

These as well as other aspects and advantages will become more readilyapparent to those of ordinary skill in the art by reading the followingdetailed description with reference where appropriate to theaccompanying drawings. Further, it should be understood that theembodiments described in this summary are intended to be merely examplesand are not intended to limit the scope of the invention, which isdefined by the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

An exemplary embodiment of the present invention is described hereinwith reference to the drawings, in which:

FIG. 1 is a simplified block diagram of a network in which the exemplaryembodiment can be implemented;

FIG. 2 is a simplified block diagram of a camera phone arranged tooperate within the exemplary embodiment;

FIG. 3 is a simplified block diagram of a network server arranged tooperate within the exemplary embodiment; and

FIG. 4 is a flow chart depicting functions carried out in accordancewith the exemplary embodiment.

DETAILED DESCRIPTION OF AN EXEMPLARY EMBODIMENT

Referring to the drawings, FIG. 1 is a simplified block diagramdepicting a network arrangement in which an exemplary embodiment of theinvention can be implemented. As shown in the figure, the networkarrangement includes a camera phone 12, a radio access network (RAN) 14,a network server 16, and an assistance center 18, among other entities.

In this example arrangement, the RAN is shown to include a basetransceiver station (BTS) 20, which is coupled with a base stationcontroller (BSC) 22, which is coupled in turn with a mobile switchingcenter (MSC) 24 and a packet data serving node (PDSN) 26. The MSCfunctions generally to control the RAN and also sits as a switching nodeon the public switched telephone network (PSTN) 28. As such, the MSC hasa bearer/transport connection with the PSTN and is further coupled witha signaling network 30, such as a Signaling System #7 (SS7) network madeup of one or more signal transfer points (STPs). The PDSN functions as agateway to a packet-switched network 32, such as a telecom carrier'sprivate packet network and/or the Internet, which may carry dataaccording to the well known Internet Protocol (IP).

Communications between the RAN and the camera phone pass over an airinterface 34 between a BTS antenna and a camera phone antenna. Thecommunications can comply with any of a variety of protocols, such asCDMA, TDMA, AMPS, GPRS/GSM, 802.11, BLUETOOTH, or others, provided thatthe RAN and camera phone are both adapted to communicate according tothe protocol.

The camera phone is preferably equipped to place voice calls and engagein packet-data communication via the RAN. The way the camera phoneperforms these functions can vary from implementation to implementation,depending on the arrangement of the RAN and on other factors.

By way of example, to place a voice call, the camera phone may transmitan IS-41 call origination message over an air interface access channelto the RAN, providing the RAN with dialed digits, i.e., a called phonenumber. The MSC may then receive that origination message andresponsively (i) direct the BSC to assign an air interface trafficchannel over which the camera phone can communicate and (ii) send a callsetup message, such as an ISUP IAM message, into the signaling networkin an effort to set up a call path to a switch serving the called party.(Alternatively, if the MSC serves the called party, the MSC may page thecalled party, in an effort to set up the call.) Upon successful setup ofthe call path, the MSC may then connect the call through to the calledparty. In performing this function, the MSC will typically the callingtelephone number, i.e., the directory number of the camera phone, in itscall setup signaling so that the called telephone can receive thecalling number through conventional caller-ID procedures.

To engage in packet-data communication, the camera phone may transmit anIS-41 packet-data origination message over an air interface accesschannel to the RAN. Upon receipt of the origination message, the MSC maythen (i) instruct the BSC to assign an air interface traffic channelover which the camera phone can communicate and (ii) signal to the PDSN,to facilitate setup of a packet-data connectivity. The PDSN and cameraphone may then negotiate with each other to establish a data link, suchas a point-to-point protocol (PPP) session for instance, and the PDSN oranother entity may assign a simple-IP or mobile-IP address to the cameraphone for the camera phone to use when engaging in packet-datacommunications. The camera phone may then send and receive packet-datacommunications with other nodes on the packet-switched network 32.

As further shown in FIG. 1, network server 16 may be coupled with bothpacket-switched network 32 and signaling network 30 and may be adaptedto communicate over both of these networks. For instance, network server16 may include a packet-data network interface module (such as anEthernet network interface card (NIC)) that allows the network server toengage in IP communications on packet-switched network 32, and networkserver 16 may also include an SS7 interface that allows the networkserver to engage in SS7 communications on signaling network 30. Throughthe packet-switched network 32, the network server may thus communicatewith camera phone 12, and, through the signaling network 30, the networkserver may communicate with RAN 14, such as MSC 24.

Assistance center 18 can similarly take various forms. In FIG. 1, theassistance center is shown as a network comprising multipleinterconnected entities, but the assistance center could just as well bea simple computer telephony device. In the example arrangement shown,the assistance center 18 includes an operator terminal 36, which iscommunicatively linked with a telephony switching node 38 and also witha packet-gateway 40. The telephony switching node 38, like MSC 14,preferably functions as a switching node on PSTN 28 and thus has trunkconnections as well as connections with signaling network 30. Thepacket-gateway 40, like PDSN 26, preferably provides connectivity with apacket-switched network or other link 42, which provides a communicationpath between the packet-gateway 40 and network server 16. Packet link 42may also be part of packet-switched network 32 or packet gateway 40 maybe linked thereto by a suitable connection 44.

Thus, assistance center can receive a call placed via PSTN 28, such as avoice call from camera phone 12. By way of example, when camera phone 12places a call to the assistance center, MSC 14 may engage in call setupsignaling (such as ISUP signaling) with telephony switching node 38, viasignaling network 30, and, upon successful setup of the call, MSC 14 mayconnect the call through PSTN 28 to switching node 38, and in turn tooperator terminal 36. When the call is placed, switching node 38 mayconventionally receive a caller-ID indication of the calling phonenumber (the phone number of camera phone 12) and may pass that tooperator terminal 36 for display to an operator or for other purposes.As another example, when the camera phone places a call to theassistance center, the camera phone may engage in packet-based callsetup signaling (such as SIP signaling) to establish a packet-basedvoice call, via packet-gateway 40, with the operator terminal 36. Otherexamples are possible as well.

As further shown in FIG. 1, the example network arrangement may includea photo management platform 50, which may sit as a node onpacket-switched network 32 for instance. The photo management platform50 could comprise one or more servers equipped to receive and managedigital image files provided from wirelessly equipped digital camerasand/or from other devices. For instance, the photo management platform50 could receive from a camera phone (via a packet-data communication,such as HTTP or other communication) a digital image file, together witha destination identifier (such as an e-mail address, IP address, SIPaddress, or other network address to which the photo management platform50 should forward the image file. The photo management platform 50 maythen forward the image file to the designated destination. As a specificexample, for instance, camera phone 12 might programmatically send adigital image file to a predefined network address of the photomanagement platform 50 together with a network address of network server16, and photo management platform 50 may responsively forward the imagefile to the network server.

Conventionally, an MSC can be programmed with advanced intelligentnetwork (AIN) triggers, which cause the MSC to signal to a designatednetwork entity when the MSC is faced with a request to set up a callfrom a given device. Some such triggers may be keyed to the callednumber. For instance, the MSC may have a profile record (e.g., visitorlocation register (VLR)) that indicates that the MSC should signal to aparticular network entity for call processing guidance whenever the MSCreceives a request from a given directory number to place a call,regardless of the called number. Other triggers might be keyed to thecalled number. For instance, the MSC may be programmed with logic thatcauses the MSC to signal to a particular network entity whenever it isfaced with a request to place a call to a given phone number, such as tothe number “911” for instance.

The signaling message that the MSC sends to the designated networkentity may be an IS-41 “Origination Request” (ORREQ) message, whichcarries an indication of the calling and called number, among otherparameters. The network entity that receives the signaling message maythen apply service logic to determine how the MSC should handle the callrequest and may then send a response message, such as an ORREQ returnresult (orreq_rr) to the MSC, providing the MSC with one or moreparameters indicating how the MSC should handle the call request.

In the exemplary embodiment, MSC 14 may include program logic thatcauses it to signal to the network server 16 whenever a call to “911” oranother designated number is placed. The network server 16 would thusreceive an indication that the call is being placed, and the networkserver could respond accordingly, as will be described more below, tofacilitate conveying an image to the called party.

FIG. 2 is a functional block diagram of an example camera phone. Asshown, the example camera phone may include, within a camera housing 56,an image-capturing block 58, a cellular-communication block 60, a userinterface block 62, a location-determination block 64, a processor 66(i.e., one or more processors) and data storage 68, all of which maywork together and may be communicatively linked together by a system busor other mechanism 69.

These components may permanently reside in the camera phone as a unitarydevice or may be temporarily linked together. For example, the cameraphone could be a digital camera in which the cellular-communicationblock 60 is an add-on card or other module, such as a Sprint PCSWireless Web Modem™ Aircard 510 manufactured by Sierra Wireless forinstance. And as another example, the camera phone could be a cellphone, in which the image-capturing block 58 is an add-on module.

The image-capturing block 58 functions to capture an image into thecamera phone. As such, the image-capturing block will preferably includefeatures that are commonly found in a digital camera, such as a lens forreceiving light that defines the image, a flash for illuminating thescene being photographed, and a mechanism to establish a digitalrepresentation of the image. The mechanism may include a CCD or CMOSimage sensor array, which resolves the light into pixels, and adigitizer that establishes digital representations of the pixels. Theimage-capturing block may then work cooperatively with the processor 66,passing an array of the digital pixel representations to the processorfor storage in a digital image file. (Alternatively, the image-capturingblock could be an optical scanner mechanism or could take some otherform.)

Cellular-communication block 60, in turn, preferably functions toestablish and engage in communications via RAN 14, in the mannerdescribed above. In a preferred embodiment, for instance, the airinterface protocol may be CDMA, which is defined by industry standardsTIA/EIA/IS-95A and IS-95B and, more recently, TIA/EIA/IS-2000, Rev. A-2(published April 2002), which are well known and also incorporatedherein by reference. The cellular-communication block may comprise aCDMA chipset, such as an MSM series chipset made by QualcommIncorporated of San Diego, Calif., as well as an antenna.

User interface block 62, in turn, may include a display (e.g., LCD) forpresenting captured digital images, and for presenting text-based and/orgraphics-based menus or prompts to users. Additionally, user interfaceblock 62 preferably includes one or more input mechanisms, such asbuttons, or a touch-sensitive display.

Location-determination block 64 may comprise a global positioning system(GPS) receiver by which the camera phone can determine its currentlocation (e.g., latitude/longitude coordinates). Alternatively oradditionally, location-determination block 64 may comprise means forconventionally communicating with RAN 14 (e.g., pursuant toTIA/EIA/IS-801) so as to determine its current location.

Data storage 68 then serves to store data, such as digital image filesas well as logic executable by processor 66 to carry out variousfunctions described herein. As such, data storage 66 may take variousforms, in one or more parts. For example, data storage 68 may comprise astorage block resident permanently in the camera phone, which holdsprogram instructions and data defining logic executable by theprocessor. Alternatively or additionally, data storage 68 may comprise aremovable storage medium, such as a Flash memory card for instance, thatholds instructions and data.

In the exemplary embodiment, the logic may define a mechanism to allow auser to capture an image. For instance, the logic may cause theimage-capturing block 58 to capture an image when a user engages ashutter-release button, places a call to a designated number, or invokessome other function on the camera phone (such as an“emergency-assistance” button for instance), or the logic may cause theimage-capturing block 58 to capture an image in response to some othertriggering event. The logic may then cause the resulting image to bestored in data storage 58.

Further, the logic may define a mechanism to allow a captured image tobe tagged in various ways or stored in various ways, to characterize theimage. By way of example, upon capture of an image, the logic may causethe camera phone to record as metadata within the image file anindication of the current time (per a system clock) and/or an indicationof the current location of the camera phone (as determined bylocation-determination block 64, for instance). As another example, whenthe camera phone is about to transmit an image into the network, thelogic may similarly cause the camera phone to record as metadata withinthe image file an indication of the current time or the currentlocation. As still another example, upon capture of an image and receiptof user instruction to designate the image as a particular type of image(such as if the user directs the camera phone to capture an“emergency-assistance” image for instance), the logic may cause thecamera phone to store the image in a folder designated to hold images ofthat type and/or with a filename indicative of that type.

The logic may also define a mechanism to allow the camera phone to placea voice call. For instance, the logic may cause thecellular-communication block 60 to transmit a call origination messageto RAN 14 when a user dials a number (or selects a predefined number,such as from a contact list, or by invoking an “emergency-assistance”button, for instance) and directs the camera phone to initiate a call tothat number. In one embodiment, the voice call can be a conventionalcircuit switched call, where the MSC sets up the call via a trunkconnection to the called party. In another embodiment, the voice callcan be placed as a voice-over-packet (e.g., voice-over-IP (VoIP)) call,where the camera phone attains packet data connectivity and engages inSIP, H.323 or other signaling to set up an RTP or other session throughwhich the camera phone can exchange voice packets with the called partyover a packet-switched network connection. Other mechanisms for placingvoice calls, including variations on these mechanisms, are possible aswell.

The logic may also define a mechanism to allow the camera phone to senda captured image to network server 16. In one embodiment, for instance,the logic may cause the camera phone to send the image in a digitalimage file, via a packet-data connection, directly or indirectly to thenetwork server 16. For instance, the camera phone could be programmedwith, or could otherwise be privy to, a network address (such as a URLor IP address) of the network server 16, and the camera phone could sendthe image file in an IP-based message, such as an HTTP PUSH message oran FTP message, to that network address. The camera phone could send theimage file directly to the network server 16 in a peer-to-peer IPcommunication. Alternatively, the camera phone could send the image fileto an intermediate entity, such as a photo management platform 50,together with a destination identifier (e.g., network address) of thenetwork server 16, and the intermediate entity could then responsivelyforward the image file to the network server 16.

The logic could cause the camera phone to send the image file to thenetwork server 16 in response to one or more designated triggeringevents. By way of example, the logic could cause the camera phone tosend the image file to the network server in response to a userinstruction provided by user-interface block 62. For instance, the logicmay define a menu through which the user can navigate to select anoption that instructs the camera phone to send the image file to thenetwork server 16.

As another example, the logic could cause the camera phone to send theimage file to the network server 16 in response to the camera phoneinitiating a call to a particular phone number. As a specific example,the logic could include data that defines one or more phone numbers,such as “911” for instance, and the logic could cause the camera phoneto send the image file to the network server whenever the user initiatesa call to one of the defined phone numbers.

As still another example, the logic could cause the camera phone to sendthe image file to the network server 16 in response to a request for theimage from the network server or from some other entity. For instance,the logic could define a short messaging service (SMS) client ormultimedia messaging service (MMS) client application that is speciallyconfigured to detect an SMS or MMS message coded with a predefined code(such as a code requesting a particular image or particular type ofimage) or originating from a predefined node (such as from the networkserver), and to respond to the message by sending the image file to thenetwork server 16.

When the logic causes the camera phone to send an image to the networkserver 16, the logic may cause the camera phone to send a particularimage. For example, the logic may cause the camera phone to send anyimage, or the most recently captured image, that has been tagged as an“emergency-photo” or as some other predefined type of image. As anotherexample, the logic may cause the camera phone to send the most recentlycaptured image, regardless of its characterization. As still anotherexample, the logic may cause the camera phone to send an imagedesignated by the user, such as an image that the user selects throughinteraction via the user interface block 62, and/or an image that theuser has correlated with a particular number being called (and that isstored in data storage in correlation with that number). Other examplesare possible as well.

Further, the logic may cause the camera phone to send with the image anidentifier that uniquely identifies the camera phone (e.g., the cameraphone's directory number, serial number or other identifier) and thatmay also uniquely identify the image itself. For instance, if the cameraphone sends the image in HTTP PUSH message, the camera phone mayprogrammatically include the identifier as a header parameter in theHTTP message (in an XML format. As another example, the camera phonecould write the identifier into the digital image file as metadata, sothat the identifier accompanies the image when transmitted. Upon receiptof the image and identifier, the network server 16 may then store theimage in correlation with the identifier, so that the network server 16can thereafter send the image to an assistance center in response to aquery keyed to the identifier. (Alternatively, the network server mayuse some other identifier instead.)

FIG. 3 is a simplified block diagram of an example network server 16. Asshown in the figure, the example network server includes a packet-datanetwork interface 70, an SS7 interface 72, a processor (i.e., one ormore processors) 74, data storage 76, all of which may be coupledtogether by a system bus, network or other mechanism 78.

Packet-data network interface 74 functions to allow the network serverto engage in IP communications on packet-switched network 32 andpreferably with packet-gateway 40 of assistance center 18. SS7 interface76, on the other hand, functions to allow the network server to engagein SS7 communications on signaling network 30.

Data storage 76 preferably holds data and machine language instructionsthat define logic executable by processor 74 to carry out variousfunctions described herein. For example, as shown in the figure, datastorage preferably functions to hold digital images 80 as well ascorrelation data 82 that correlates each digital image with at least oneidentifier, such as an identifier of a device (such as a camera phone)that provided the image or an identifier of a call placed by the device(such as a particular call to assistance center 18). The correlationdata, for instance, may take the form of a table, in which each recordincludes an identifier and a full path/filename pointing to a storeddigital image in data storage 76.

In the exemplary embodiment, when the network server 16 receives adigital image file transmitted from camera phone 12, the logic on thenetwork server 16 may cause the network server to store the digitalimage file in data storage 76 in correlation with an identifier. If thenetwork server receives the image file from the camera phone withouthaving requested the image file from the camera phone, the image filewould preferably come with an identifier of the camera phone. Thus, thelogic would preferably cause the network server to store the image incorrelation with that camera phone identifier. On the other hand, if thenetwork server receives the image file from the camera phone in responseto a request from the network server, the network server would bydefinition already know the identifier of the camera phone and couldthus store the image in correlation with that identifier or could storethe image in correlation with another associated identifier. Duringsetup of a call from the camera phone to the assistance center, thenetwork server could record a correlation between the image and anassistance call identifier (which the network server or other entitycould assign).

In addition, when the camera phone places a call that causes MSC tosignal up to the network server via signaling network 30, the logic onthe network server 16 may cause the network server to acquire an imagefrom the camera phone if it does not already have one, and the logic maycause the network server to respond to the MSC with an identifier of theimage. That way, the MSC can then pass that identifier along in callsetup signaling to the assistance center 18, and the assistance center18 can in turn request the stored image from the network server.

For instance, in response to an origination request message from theMSC, the logic may cause the network server to determine whether adigital image from the camera phone is already stored in data storage76. If so, then the logic may cause the network server 16 to respond tothe MSC with a message that conveys an identifier of the stored image,such as an image identifier an identifier of the camera phone (if theimage is stored in correlation with the identifier of the camera phone),or a call identifier that the network server or assigns for theparticular call. Alternatively, the MSC could assign a call identifierand send it to the network server in its origination request message tothe network server, and the network server could correlate the imagefrom the camera phone with that call identifier.

On the other hand, if the network server determines that a digital imagefrom the camera phone is not yet stored in data storage 76, or ifotherwise desired, the logic may cause the network server to request animage from the camera phone. For instance, the network server may sendan SMS, MMS, WAP push, or other sort of message to the camera phone,which would cause the camera phone to responsively send an image to thenetwork server. The network server may then store the image incorrelation with an identifier, such as a camera phone identifier orcall identifier. Given an image provided by the camera phone (or work toacquire that image), the logic may then cause the network server 16 torespond to the MSC with a message that conveys the identifier inconnection with which the image is stored, unless the MSC has alreadyprovided the call identifier.

The logic on the network server also preferably causes the networkserver to send a given image to assistance center 18 in response to oneor more triggering events, such as initiation of a call to theassistance center, or query from the assistance center, keyed to anidentifier in correlation with which the image is stored at the networkserver.

By way of example, the logic may cause the network server to send animage to the assistance center in response to a call being set up to theassistance center. For instance, when the network server receives asignal from the MSC indicating that a call from the camera phone isbeing set up to assistance center 18, the logic may cause the networkserver to send to the assistance center an image that the camera phonehas provided to the network server. The image could be an image providedto the network server before the camera phone initiated the call to theassistance center or an image provided to the network server in responseto a query from the network server as described above. The networkserver could send the image to the assistance center in an IP-basedcommunication, which packet-gateway 40 would receive and forward tooperator terminal 36.

As another example, the logic may cause the network server to send animage to the assistance center in response to a query from theassistance center. Such a query would preferably be keyed to anidentifier in connection with which the image is stored at the networkserver 16, and the query could be sent during call initiation and/or atany time thereafter.

For instance, when the camera phone places a call to the assistancecenter and the assistance center thus receives the camera phone's phonenumber as caller-ID information, the assistance center could send aquery to the network server seeking an image that is correlated withthat calling phone number, and the network server would responsivelysend to the assistance center an image that was stored in correlationwith that phone number.

Alternatively, when the camera phone places a call to the assistancecenter, which causes the MSC to signal to the network server and receivein response from the network server an image identifier (as describedabove), the MSC would preferably provide that identifier in a call setupmessage (e.g., ISUP IAM) to telephony switching node 38 of theassistance center 18. Switching node 38 may then pass that informationon to operator terminal 36, which may then send a query to the networkserver seeking an image that is correlated with that identifier. Thenetwork server may then responsively send to the assistance center animage that was stored in correlation with that identifier.

Further, the assistance center, either automatically or at the requestof an operator, could make one or more subsequent requests to thenetwork server for an image correlated with a given identifier. Forinstance, after a user places an emergency assistance call to theassistance center, the assistance center could periodically check withthe network server to see if the network server has any emergency-scenephotos that the camera phone has captured, and to acquire thoseemergency-scene photos.

The logic in the network server could further condition its sending ofan image to the assistance center on other criteria, such as on locationand/or time tags of the image. For example, the logic could cause thenetwork server to send to the assistance an image only if the image wascaptured within a given past time period (as indicated by capture timemetadata in the image file for instance), only if the image was capturedat a given location (as indicated by capture location metadata in theimage file for instance), such as at the location from which the cameraphone initiated the assistance phone call, or only if one or more othercriteria are met.

FIG. 4 is a flow chart, depicting an example set of functions carriedout in accordance with the exemplary embodiment. In this figure and inthe discussion that follows, the assumption is that the camera phonecaptures an emergency-scene photo, and that the assistance center is anemergency assistance center such as a 911 center. The functions can beextended, however, to apply in a scenario where the photo representssome other image and where the assistance center is some other sort ofassistance center, and with other variations as well.

As shown in FIG. 4, at block 100, the camera phone captures anemergency-photo. At block 102, the camera phone sends the photo to thenetwork server, and, at block 104, the network server stores the photocorrelated with an identifier, such as a camera phone ID or an emergencyassistance call ID. At block 106, the emergency assistance centerqueries the network server for emergency photo(s) correlated with theidentifier. And at block 108, the network server responsively providesthe emergency assistance center with the emergency photo provided by thecamera phone. Specific examples of this process will now be described.

EXAMPLE 1

In this first example, assume that a user of a camera phone operates thecamera phone to capture an emergency-photo and to send theemergency-photo to the network server. For instance, the user may pointthe camera phone lens at an emergency scene and engage anemergency-assistance button on the camera phone. This may cause thecamera phone to capture an emergency-photo and to store the photo as anemergency scene photo. It may next cause the camera phone to send theemergency-photo to the network server, such as by sending it to thephoto management platform with a destination identifier of the networkserver. In turn, it may cause the camera phone to initiate a 911 call,by dialing the phone number “911”.

When the network server receives the emergency photo from the cameraphone, the photo would preferably arrive together with a camera phoneidentifier, such as the directory number of the camera phone. Thenetwork server may thus store the photo in correlation with that cameraphone identifier.

When the camera phone initiates the 911 call, the MSC may encounter anAIN trigger, which would cause the MSC to send an ORREQ message to thenetwork server, providing the network server with the camera phone'sdirectory number and the called number (911). Given this message, thenetwork server may then look to its data storage for a photo correlatedwith the camera phone's directory number and would thus retrieve theemergency-photo that the cameraphone had send to the network server. Thenetwork server may thus respond with an orreq_rr to the MSC, carrying aparameter that indicates the network server has an emergency-photo forthe emergency assistance center.

The MSC will then work to set up the call to the emergency assistancecenter, such as by sending an ISUP IAM signaling message to thetelephony switching node of the assistance center. Conventionally, theIAM message would carry an indication of the calling phone number, i.e.,the camera phone's directory number, as caller-ID information. Further,preferably, the IAM message would carry the parameter indicating thatthe network server has the emergency photo for the assistance center.

Thus, upon receipt of the call setup message from the MSC, the emergencyassistance center may responsively query the network server to obtainthe emergency photo. The query would preferably carry the camera phone'sdirectory number. Upon receipt of the query, the network server wouldthen look to its data storage to find the emergency photo stored incorrelation with that number. And the network server would then providethat emergency photo in response to the emergency assistance center, fordisplay or other use.

EXAMPLE 2

In this next example, assume that a user of a camera phone operates thecamera phone to capture an emergency-photo and to store theemergency-photo. For instance, the user may capture a photo of anemergency scene and then direct the camera phone to store the photo asan emergency-photo (e.g., by storing the photo with a designatedfilename or in a designated folder.)

Assume that, shortly thereafter, the user then places a 911 call toreport the emergency. Thus, the camera phone may send a call originationmessage over the air to the MSC, seeking to set up a call to thedirectory number 911 (or other designated emergency number).

When the MSC receives this call request, the MSC may then encounter anAIN trigger and send an ORREQ to the network server, providing thenetwork server with the calling and called numbers. In response, thenetwork server may look to its data storage and determine that it doesnot currently have an emergency-photo provided by the camera phone(e.g., a photo correlated with the camera phone's directory number asindicated in the ORREQ message). Thus, the network server may initiate aprocess of acquiring an emergency-photo from the camera phone.

To acquire an emergency-photo from the camera phone, the network servermay, for instance, send to the camera phone an SMS message carrying aspecial code to which the camera phone is programmed to respond bysending an emergency-photo to the network server. For instance, thespecially coded SMS message can carry a URL or other network address ofthe network server as well as a special code that causes the cameraphone to send any (or any recently captured) emergency-photo to thenetwork server. Thus, the camera phone may retrieve the storedemergency-photo from data storage and send it to the network server.

Upon receipt of the emergency-photo from the camera phone, the networkserver may then store the emergency photo in correlation with anidentifier, such as a unique call-identifier that the network serverassigns for this call being placed by the camera phone. The networkserver may then respond with an orreq_rr to the MSC, providing the MSCwith the assigned identifier, and instructing the MSC to proceed withsetup of the call to the assistance center.

The MSC may then send a call setup message such as an ISUP IAM messageto the assistance center, providing the assistance center with theidentifier supplied by the network server. Given that identifier, theassistance center may then query the network server to obtain anemergency photo correlated with the identifier. Upon receipt of thatquery from the assistance center, the network server would thus look toits data storage to find the emergency photo stored in correlation withthe identifier, and the network server would send that photo in aresponse message to the assistance center.

EXAMPLE 3

In another example, assume that a user of the camera phone has called911, and the emergency assistance center has received an emergency-photoaccording to the process set forth in either of the examples above.Assume next that the user operates the camera phone to capture one ormore other images of the emergency scene, and the user operates thecamera phone to send the one or more additional emergency photos to thenetwork server.

In this example, the emergency assistance center can query the networkserver one or more times after the initial query, to obtain one or moreadditional emergency photos captured by the camera phone. Each suchquery could be invoked by an operator at the emergency assistancecenter, or automatically by equipment at the assistance center.

Preferably, the network server would store each additional emergencyphoto from the camera phone in correlation with the same identifier thatwas provided to the assistance center (e.g., the camera phone identifieror call identifier). Thus, when the network server receives additionalqueries from the assistance center seeking emergency photos correlatedwith that identifier, the network server can send the appropriateemergency photos in response to the assistance center. In an exemplaryembodiment, the network server could be programmed to send any emergencyphoto that has not yet been sent to the assistance center.

An exemplary embodiment of the present invention has been describedabove. Those skilled in the art will understand, however, that changesand modifications may be made to this embodiment without departing fromthe true scope and spirit of the present invention, which is defined bythe claims.

For example, where the foregoing description discusses logic in the formof program instructions, it should be understood that the logic couldequally take the form of software, firmware and/or hardware. As anotherexample, although the foregoing description discusses sending a givenphoto to an assistance center, it should be understood that more thanone photo could be sent to the assistance center. And as still anotherexample, although the foregoing description focuses on providing imagesto assistance centers, it should be understood that the invention couldbe extended to provide photos to other called destinations as well.

Other examples are possible as well.

1. A method comprising: receiving into a network server an imagecaptured by a camera phone; storing the image at the network server incorrelation with an identifier; during setup of a call from the cameraphone to an assistance center, providing the identifier to theassistance center; receiving into the network server from the assistancecenter a request specifying the identifier; and using the identifierspecified by the request as a basis to retrieve the image, and conveyingthe image in a response from the network server to the assistancecenter.
 2. The method of claim 1, wherein the identifier identifies thecamera phone.
 3. The method of claim 1, wherein the identifieridentifies the call.
 4. The method of claim 1, wherein the assistancecenter is an emergency assistance center.
 5. The method of claim 1,wherein the network server resides in a telecom carrier's network. 6.The method of claim 1, wherein the network server comprises one or morecomputers with data storage for holding the image in correlation withthe identifier.
 7. The method of claim 1, wherein receiving the imageinto the network server occurs before the camera phone initiates thecall to the assistance center.
 8. The method of claim 7, whereinreceiving the image into the network server comprises receiving theimage delivered from the camera phone to a network address assigned tothe network server.
 9. The method of claim 8, wherein the networkaddress comprises an address selected from the group consisting of anInternet Protocol (IP) address, an e-mail address, a Universal ResourceIdentifier (URI), and a Session Initiation Protocol (SIP) address. 10.The method of claim 7, wherein receiving the image into the networkserver comprises receiving the image from a photo server to which thecamera phone transmitted the image.
 11. The method of claim 1, whereinreceiving the image into the network server occurs during setup of thecall from the camera phone to the assistance center.
 12. The method ofclaim 11, further comprising, during setup of the call from thecameraphone to the assistance center: receiving into the network servera signal indicative of the call being set up; and responsively sendingfrom the network server to the camera phone a request for the image. 13.The method of claim 1, wherein providing the identifier to theassistance center during setup of the call comprises: detecting setup ofthe call at a switch; responsively sending a signaling message from theswitch to the network server; receiving at the switch a response to thesignaling message, wherein the response to the message provides theidentifier; and sending from the switch a call setup message carryingthe identifier.
 14. The method of claim 1, wherein the identifiercomprises a directory number of the camera phone, and wherein providingthe identifier to the assistance center comprises delivering thedirectory number in call setup messaging asautomatic-number-identification information.
 15. The method of claim 1,wherein receiving into the network server the request from theassistance center occurs during setup of the call from the camera phoneto the assistance center.
 16. The method of claim 1, wherein receivingthe image into the network server comprises receiving a digital imagefile containing data representative of the image; wherein conveying theimage in a response from the network server to the assistance centercomprises conveying the digital image file in the response.
 17. Themethod of claim 16, wherein the digital image file further containscharacterizing-metadata, the method further comprising: deciding, basedat least in part on the characterizing-metadata, whether to send theimage from the network server to the assistance center in response tothe request.
 18. The method of claim 17, wherein thecharacterizing-metadata defines information selected from the groupconsisting of (i) image-capture location, (ii) image-capture time, (iii)image-transmit location, and (iv) image-transmit time.
 19. The method ofclaim 1, further comprising, after conveying the image from the networkserver to the assistance center: receiving into the network server asubsequent image captured by the camera phone; storing the subsequentimage at the network server in correlation with the identifier;receiving into the network server a subsequent request from theassistance center to obtain at least one image correlated with theidentifier; and conveying the subsequent image in a response from thenetwork server to the assistance center.
 20. A system comprising: aprocessor; data storage; and program instructions stored in the datastorage and executable by the processor to carry out functionscomprising: receiving an image captured by a camera phone, storing theimage in the data storage, in correlation with an identifier, duringsetup of a call from the camera phone to an assistance center, receivingfrom the assistance center a request specifying the identifier, andusing the identifier specified by the request as a basis to retrieve theimage from the data storage, and sending the image in a response to theassistance center.
 21. A method comprising: capturing an image into acamera phone; conveying the image from the camera phone to a networkserver; storing the image at the network server in correlation with anidentifier; placing a call from the camera phone to an assistancecenter, and providing the identifier to the assistance center duringsetup of the call; and conveying a request from the assistance center tothe network server to obtain the image, based on the identifier, andconveying the image in a response from the network server to theassistance center.
 22. The method of claim 21, wherein conveying theimage from the camera phone to the network server occurs before placingthe call from the camera phone to the assistance center.
 23. The methodof claim 21, wherein conveying the image from the camera phone to thenetwork server occurs during setup of the call from the camera phone tothe assistance center.
 24. The method of claim 23, wherein conveying theimage from the camera phone to the network server comprises: the networkserver receiving a signal indicative of the call being set up, and thenetwork server responsively requesting the image from the camera phone.25. The method of claim 21, wherein the assistance center querying thenetwork server to obtain the image, based on the identifier, occursduring setup of the call.
 26. The method of claim 25, wherein theassistance center querying the network server center to obtain the imagebased on the identifier comprises: receiving the identifier at theassistance center; and sending a request message from the assistancecenter to the network server, wherein the request message carries theidentifier as a query key.
 27. A method comprising: receiving into anetwork server an image captured by a camera phone; storing the image atthe network server in correlation with an identifier; during setup of acall from the camera phone to a destination, providing the identifier tothe destination; receiving into the network server from the destinationa request specifying the identifier; and using the identifier specifiedby the request as a basis to retrieve the image, and conveying the imagein a response from the network server to the destination.